<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Class file_mapping</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../../interprocess/indexes_reference.html#header.boost.interprocess.file_mapping_hpp" title="Header &lt;boost/interprocess/file_mapping.hpp&gt;">
<link rel="prev" href="lock_exception.html" title="Class lock_exception">
<link rel="next" href="flat_map_index.html" title="Class template flat_map_index">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="lock_exception.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../interprocess/indexes_reference.html#header.boost.interprocess.file_mapping_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="flat_map_index.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.interprocess.file_mapping"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class file_mapping</span></h2>
<p>boost::interprocess::file_mapping</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../interprocess/indexes_reference.html#header.boost.interprocess.file_mapping_hpp" title="Header &lt;boost/interprocess/file_mapping.hpp&gt;">boost/interprocess/file_mapping.hpp</a>&gt;

</span>
<span class="keyword">class</span> <a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
  <span class="comment">// <a class="link" href="file_mapping.html#boost.interprocess.file_mappingconstruct-copy-destruct">construct/copy/destruct</a></span>
  <a class="link" href="file_mapping.html#idm25905-bb"><span class="identifier">file_mapping</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
  <a class="link" href="file_mapping.html#idm25908-bb"><span class="identifier">file_mapping</span></a><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">mode_t</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="file_mapping.html#idm25916-bb"><span class="identifier">file_mapping</span></a><span class="special">(</span><span class="keyword">const</span> <span class="keyword">wchar_t</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">mode_t</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="file_mapping.html#idm25925-bb"><span class="identifier">file_mapping</span></a><span class="special">(</span><a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
  <a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">&amp;</span> <a class="link" href="file_mapping.html#idm25931-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
  <a class="link" href="file_mapping.html#idm25939-bb"><span class="special">~</span><span class="identifier">file_mapping</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>

  <span class="comment">// <a class="link" href="file_mapping.html#idm25884-bb">public member functions</a></span>
  <span class="keyword">void</span> <a class="link" href="file_mapping.html#idm25885-bb"><span class="identifier">swap</span></a><span class="special">(</span><a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
  <span class="identifier">mode_t</span> <a class="link" href="file_mapping.html#idm25892-bb"><span class="identifier">get_mode</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
  <span class="identifier">mapping_handle_t</span> <a class="link" href="file_mapping.html#idm25896-bb"><span class="identifier">get_mapping_handle</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
  <span class="keyword">const</span> <span class="keyword">char</span> <span class="special">*</span> <a class="link" href="file_mapping.html#idm25901-bb"><span class="identifier">get_name</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>

  <span class="comment">// <a class="link" href="file_mapping.html#idm25942-bb">public static functions</a></span>
  <span class="keyword">static</span> <span class="keyword">bool</span> <a class="link" href="../container/static_vector.html#idm25943-bb"><span class="identifier">remove</span></a><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span> <span class="special">*</span><span class="special">)</span><span class="special">;</span>
  <span class="keyword">static</span> <span class="keyword">bool</span> <a class="link" href="file_mapping.html#idm25949-bb"><span class="identifier">remove</span></a><span class="special">(</span><span class="keyword">const</span> <span class="keyword">wchar_t</span> <span class="special">*</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="id-1.3.19.17.3.26.4.4"></a><h2>Description</h2>
<p>A class that wraps a file-mapping that can be used to create mapped regions from the mapped files </p>
<div class="refsect2">
<a name="id-1.3.19.17.3.26.4.4.3"></a><h3>
<a name="boost.interprocess.file_mappingconstruct-copy-destruct"></a><code class="computeroutput">file_mapping</code> 
        public
       construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><a name="idm25905-bb"></a><span class="identifier">file_mapping</span><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
<p>Constructs an empty file mapping. Does not throw </p>
</li>
<li class="listitem">
<pre class="literallayout"><a name="idm25908-bb"></a><span class="identifier">file_mapping</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span> <span class="special">*</span> filename<span class="special">,</span> <span class="identifier">mode_t</span> mode<span class="special">)</span><span class="special">;</span></pre>
<p>Opens a file mapping of file "filename", starting in offset "file_offset", and the mapping's size will be "size". The mapping can be opened for read-only "read_only" or read-write "read_write" modes. Throws <code class="computeroutput"><a class="link" href="interprocess_exception.html" title="Class interprocess_exception">interprocess_exception</a></code> on error. </p>
</li>
<li class="listitem">
<pre class="literallayout"><a name="idm25916-bb"></a><span class="identifier">file_mapping</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">wchar_t</span> <span class="special">*</span> filename<span class="special">,</span> <span class="identifier">mode_t</span> mode<span class="special">)</span><span class="special">;</span></pre>
<p>Opens a file mapping of file "filename", starting in offset "file_offset", and the mapping's size will be "size". The mapping can be opened for read-only "read_only" or read-write "read_write" modes. Throws <code class="computeroutput"><a class="link" href="interprocess_exception.html" title="Class interprocess_exception">interprocess_exception</a></code> on error.</p>
<p>Note: This function is only available on operating systems with native wchar_t APIs (e.g. Windows). </p>
</li>
<li class="listitem">
<pre class="literallayout"><a name="idm25925-bb"></a><span class="identifier">file_mapping</span><span class="special">(</span><a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">&amp;&amp;</span> moved<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
<p>Moves the ownership of "moved"'s file mapping object to *this. After the call, "moved" does not represent any file mapping object. Does not throw </p>
</li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">&amp;</span> <a name="idm25931-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">&amp;&amp;</span> moved<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
<p>Moves the ownership of "moved"'s file mapping to *this. After the call, "moved" does not represent any file mapping. Does not throw </p>
</li>
<li class="listitem">
<pre class="literallayout"><a name="idm25939-bb"></a><span class="special">~</span><span class="identifier">file_mapping</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
<p>Destroys the file mapping. All mapped regions created from this are still valid. Does not throw </p>
</li>
</ol></div>
</div>
<div class="refsect2">
<a name="id-1.3.19.17.3.26.4.4.4"></a><h3>
<a name="idm25884-bb"></a><code class="computeroutput">file_mapping</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm25885-bb"></a><span class="identifier">swap</span><span class="special">(</span><a class="link" href="file_mapping.html" title="Class file_mapping">file_mapping</a> <span class="special">&amp;</span> other<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
<p>Swaps to file_mappings. Does not throw. </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">mode_t</span> <a name="idm25892-bb"></a><span class="identifier">get_mode</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
<p>Returns access mode used in the constructor </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">mapping_handle_t</span> <a name="idm25896-bb"></a><span class="identifier">get_mapping_handle</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
<p>Obtains the mapping handle to be used with <code class="computeroutput"><a class="link" href="mapped_region.html" title="Class mapped_region">mapped_region</a></code> </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">const</span> <span class="keyword">char</span> <span class="special">*</span> <a name="idm25901-bb"></a><span class="identifier">get_name</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
<p>Returns the name of the file used in the constructor. </p>
</li>
</ol></div>
</div>
<div class="refsect2">
<a name="id-1.3.19.17.3.26.4.4.5"></a><h3>
<a name="idm25942-bb"></a><code class="computeroutput">file_mapping</code> public static functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">static</span> <span class="keyword">bool</span> <a name="idm25943-bb"></a><span class="identifier">remove</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">char</span> <span class="special">*</span> filename<span class="special">)</span><span class="special">;</span></pre>
<p>Removes the file named "filename" even if it's been memory mapped. Returns true on success. The function might fail in some operating systems if the file is being used other processes and no deletion permission was shared. </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">static</span> <span class="keyword">bool</span> <a name="idm25949-bb"></a><span class="identifier">remove</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">wchar_t</span> <span class="special">*</span> filename<span class="special">)</span><span class="special">;</span></pre>
<p>Removes the file named "filename" even if it's been memory mapped. Returns true on success. The function might fail in some operating systems if the file is being used other processes and no deletion permission was shared.</p>
<p>Note: This function is only available on operating systems with native wchar_t APIs (e.g. Windows). </p>
</li>
</ol></div>
</div>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2005-2015 Ion Gaztanaga<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="lock_exception.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../interprocess/indexes_reference.html#header.boost.interprocess.file_mapping_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="flat_map_index.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
